package com.erp.purchase.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.erp.common.annotation.Excel;
import com.erp.common.core.domain.BaseEntity;

/**
 * 采购订单对象 erp_pur_order
 *
 * @author hfw
 * @date 2025-09-04
 */
@Data
public class PurOrder extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 订单ID */
    private Long id;

    /** 订单编号（业务编号） */
    @Excel(name = "订单编号", readConverterExp = "业=务编号")
    private String orderNo;

    /** 采购人ID（关联user表） */
    private Long purchaserId;

    /** 采购人姓名 */
    @Excel(name = "采购人姓名")
    private String purchaserName;

    /** 采购人电话 */
    private String purchaserPhone;

    /** 供应商ID（关联supplier表） */
    private Long supplierId;

    /** 入库仓库ID（关联warehouse表） */
    private Long warehouseId;

    /** 入库仓库名称 */
    private String warehouseName;

    /** 订单状态：1-待审批，2-待采购，3-已完成，4-已取消 */
    private Integer orderStatus;

    /** 采购时间 */
    private Date purchaseTime;

    /** 订单总金额 */
    private BigDecimal totalAmount;

    /** 创建人ID */
    private Long creatorId;

    /** 创建人姓名 */
    private String creatorName;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdAt;

    /** 更新时间 */
    private Date updatedAt;

    /** 是否删除：0-未删除，1-已删除 */
    private Integer isDeleted;

}
